import request from '@/utils/request';
import type { BaseBeanModel, ResponsePageData, ResponseBaseData, QueryParamModel } from '@/api/model/baseModel';
const basePath = '/appsys/ConnectCenter/AppRestFulRest';
/** 单表 */
export interface SysRestfulDto extends BaseBeanModel {
  /** 标识 */
  id?: string;
  /** 名称 */
  name?: any;
  /** 状态 */
  url?: any;
  /** 用户 */
  requestMethod?: any;
  /** 口令 */
  paramType?: any;
  /** 驱动 */
  paramText?: any;
  /** 请求头 */
  header?: any;
  /** 请求参数 */
  param?: any;
  /** 请求参数 */
  classId?: any;
}

/**
 * 获取分页数据
 * @param param 表格参数
 * @param id 树节点id
 * @returns 表格数据
 */
export function listSysRestfulPage(param: QueryParamModel, id: string): Promise<ResponsePageData<SysRestfulDto>> {
  return request.post(`${basePath}/searchByPage/${id}/v1`, param);
}

/**
 * 根据id加载数据
 * @param id 选中行id
 * @returns 表单数据
 */
export function getSysRestful(id: string): Promise<ResponseBaseData<SysRestfulDto>> {
  return request.get(`${basePath}/get/${id}/v1`);
}

/**
 * 保存表单数据
 * @param form 表单数据
 */
export function saveSysRestful(form: SysRestfulDto): Promise<ResponseBaseData<any>> {
  return request.post(`${basePath}/insertRestful/v1`, form);
}

/**
 * 编辑保存表单数据
 * @param form 编辑表单数据
 */
export function editSaveSysRestful(form: SysRestfulDto): Promise<ResponseBaseData<any>> {
  return request.post(`${basePath}/updateRestful/v1`, form);
}

/**
 * 根据id集合删除数据
 * @param ids 选中行id集合
 */
export function delSysRestful(ids: [string]): Promise<ResponseBaseData<any>> {
  return request.delete(`${basePath}/deleteRestfulByIds/v1`, { data: ids });
}

/**
 * 连接测试
 * @param id 选中id
 */
export function testSysRestful(id: string): Promise<ResponseBaseData<any>> {
  return request.get(`${basePath}/testRestful/${id}/v1`);
}
